﻿using mozhi.smarterp.Finance.Enums;
using mozhi.smarterp.Finance.Querys;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Domain.Repositories;

namespace mozhi.smarterp.Finance.Reports.Repository
{
    public interface IFinancialReportItemRepository : IRepository<FinancialReportItem,Guid>
    {
        Task<int> GetCountAsync(FinancialReportItemQuery query);

        Task<List<FinancialReportItem>> FindAsync(FinancialReportItemQuery query);

        Task<List<FinancialReportItem>> GetDefaultReportItemsAsync(AccountingStandardType accountingStandard);

        Task DeleteAsync(List<FinancialReportItem> items);

        Task<List<FinancialReportItem>> InsertAsync(List<FinancialReportItem> items);
    }
}
